<?php

require_once 'bo/UsuarioBO.php';
require_once 'bo/ProdutoBO.php';

class IndexController extends Zend_Controller_Action
{

    public function init ()
    {
        /* Initialize action controller here */
        
    }

    public function indexAction ()
    {
        
        Zend_Layout::getMvcInstance ()->assign ('nav', 'index');

        $request = $this->getRequest ();
        
        if ($request->getPost ())
        {            
            if ($request->getPost ('bt_acesso') == "login")
            {       
                    $usuarioBO = new UsuarioBO();
                    
                    $login     = $usuarioBO->autenticarUsuario($request->getPost ('email'),$request->getPost ('senha'));
                    
                    $this->dispatchLogin($login);
            }

            if ($request->getPost ('bt_acesso') == 'logout')
            {
                    $storage = new Zend_Auth_Storage_Session();

                    $storage->clear();

                    Zend_Session::destroy(true);

            }
            
         }
         // lista os produtos que estam marcados para serem exibidos na home
         $this->view->capas = ProdutoBO::getInstance()->listarCapas ();
         
        
    }

    public function catalogoAction ()
    {
        
             Zend_Layout::getMvcInstance()->assign('nav', 'catalogo');
             
             $this->view->produtos = ProdutoBO::getInstance()->listar (null,null, array(0,6));
    }

    public function ondeestamosAction ()
    {

              Zend_Layout::getMvcInstance()->assign('nav', 'ondeestamos');
    }

    public function contatoAction ()
    {

              Zend_Layout::getMvcInstance()->assign('nav', 'contato');
    }

    public function noscriptAction ()
    {

              die("Opa! O usode scripts em seu navegador parece estar desativado. Pedimos, por favor,
                  que os habilite. Desta forma poderá navegar tranquilamente pelo nosso site.<br/>
                  A <b>CajuCup agradece</b> a compreensão.");
    }

    /* logica da redirecionamentos aplicacao */
    
    public function dispatchLogin (array $login)
    {   
        if ($login['resultado'] == 'false')
        {

           return $this->_redirect('index?err='.$login['mensagem']."#sign_box");
            
        }

       // se resultado verdadeiro, checa a sessao para o tipo de usuario. redirecionando-o
       // para a pagina principal, ou para pagina de configuracoes no caso se admin
        $acl = Zend_Registry::get('acl');
        
        if ($acl->isAllowed ($acl->getRoleName ($_SESSION["Zend_Auth"]["storage"]->id_tipo_usuario), 'produtos'))
	        {	
	            return $this->_redirect ('produtos#top');
	        }
        else

            return $this->_redirect ('index#top');
        
                  
    }
}
